feat(extensions): support guided review workflows - #717
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Greptile SummaryThis PR expands the extension API for guided review workflows.
Confidence Score: 4/5The PR appears safe to merge after addressing the non-blocking style and dialog-rendering test coverage issues. The reviewed runtime paths have no established blocking failure, but the changed dialog geometry lacks direct component coverage and several additions violate the repository’s required quote style. Files Needing Attention: src/extensions/runExtension.ts, src/extensions/events.ts, src/ui/App.tsx, src/ui/components/chrome/ExtensionDialog.tsx Important Files Changed
Sequence DiagramsequenceDiagram
participant E as Extension
participant R as Extension Registry
participant A as App
participant U as User
E->>R: configureSession / register handlers
A->>R: resolve session options and event context
U->>A: execute named command
A->>E: command_executed(commandId)
E->>A: dialogs.confirm/select/input
A->>U: native attributed dialog
E->>A: navigation.selectFile/selectHunk
Prompt To Fix All With AI### Issue 1
src/extensions/runExtension.ts:331
**Inconsistent TypeScript quote style**
New TypeScript code uses double-quoted string literals across several changed runtime files, diverging from the repository's required single-quote style and establishing an inconsistent pattern for subsequent changes.
### Issue 2
src/ui/components/chrome/ExtensionDialog.tsx:92-101
**Dialog geometry lacks coverage**
The dialog now derives rendered rows and modal height from body wrapping and attribution state, but the added tests only verify queued data. Without a component-level regression test, clipping, height, and attribution-spacing regressions can pass unnoticed.
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.Reviews (1): Last reviewed commit: "feat(extensions): support guided review ..." | Re-trigger Greptile |
| apiVersion: HUNK_EXTENSION_API_VERSION, | ||
| config, | ||
| events, | ||
| configureSession(options: ExtensionSessionOptions) { |
There was a problem hiding this comment.
Inconsistent TypeScript quote style
New TypeScript code uses double-quoted string literals across several changed runtime files, diverging from the repository's required single-quote style and establishing an inconsistent pattern for subsequent changes.
Context Used: guidelines.mdc Cursor rule (source)
Prompt To Fix With AI
This is a comment left during a code review.
Path: src/extensions/runExtension.ts
Line: 331
Comment:
**Inconsistent TypeScript quote style**
New TypeScript code uses double-quoted string literals across several changed runtime files, diverging from the repository's required single-quote style and establishing an inconsistent pattern for subsequent changes.
**Context Used:** guidelines.mdc Cursor rule ([source](https://github.com/modem-dev/modem/blob/main/.cursor/rules/guidelines.mdc))
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
| const wrappedBodyLines = request.bodyLines.flatMap((line) => wrapText(line, bodyWidth)); | ||
| const attributionRows = request.showAttribution ? 1 : 0; | ||
| const attributionGapRows = request.showAttribution && wrappedBodyLines.length > 0 ? 1 : 0; | ||
|
|
||
| return ( | ||
| <ConfirmDialog | ||
| actions={[ | ||
| { keyLabel: "enter/y", label: request.confirmLabel, run: onAccept }, | ||
| { keyLabel: "esc/n", label: request.cancelLabel, run: onCancel }, | ||
| ]} |
There was a problem hiding this comment.
Dialog geometry lacks coverage
The dialog now derives rendered rows and modal height from body wrapping and attribution state, but the added tests only verify queued data. Without a component-level regression test, clipping, height, and attribution-spacing regressions can pass unnoticed.
Context Used: testing.mdc Cursor rule (source)
Prompt To Fix With AI
This is a comment left during a code review.
Path: src/ui/components/chrome/ExtensionDialog.tsx
Line: 92-101
Comment:
**Dialog geometry lacks coverage**
The dialog now derives rendered rows and modal height from body wrapping and attribution state, but the added tests only verify queued data. Without a component-level regression test, clipping, height, and attribution-spacing regressions can pass unnoticed.
**Context Used:** testing.mdc Cursor rule ([source](https://github.com/modem-dev/modem/blob/main/.cursor/rules/testing.mdc))
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
Summary
Testing
bun run typecheckbun run lintbun run check:docsbun test